/**
 * @author Wu Zhenzhen
 * @version Apr 14, 2012 12:21:33 AM
 */

(function() {
	Ext.onReady(function() {
		// 純JS的創建對象
		function User() {
			this.name = 'myhkzhen';
			this.age = 27;
			var email = 'myhongkongzhen@gmail.com';
			this.getEmail = function() {
				return email;
			};
		}

		var user = new User();
		// alert(user.name+"----"+user.age);
		// 利用console打印信息
		console.log(user.name + "--" + user.age);
		// console.info(user.getEmail());
		// console.warn(user.name+"--"+user.age);
		// console.debug(user.name+"--"+user.age);
		// console.error(user.name+"--"+user.age);

		// JSON方式創建對象
		var Person = {
			name : 'myhkzhen',
			age : 27
		};
		console.log(Person.name + "------" + Person.age);

		// Extjs創建一個對象
		var win = Ext.create('Ext.window.Window', {
			title : 'Hello',
			height : 200,
			width : 400
		});

		// Ext.get('bn1').on('click', function() {
		// win.show();
		// });

		// 自定義一個對象
		// 改為異步加載的方式

		Ext.Loader.setConfig({
			enabled : true
		// 注意：如果create中創建實例，使用的是全路徑類名，則不需要paths這個參數，就能找到異步加載的js文件
		// ,paths : {
		// 自定義類的名稱
		// 'myWin' : 'asyn/win.js'
		// --------自定義類的JS位置
		// }
		});

		// var myWin = Ext.define('myWin', {
		// extend : 'Ext.window.Window',
		// title : 'myWin',
		// height : 200,
		// width : 400,
		// initComponent : function() {
		// this.callParent(arguments);
		// }
		// });

		Ext.get('bn1').on('click', function() {
			// 實例化對象
			// 注意：define定義完對象之後，要用對象的時候要先實例化，就像是java中，定義完一個類之後要new出來對象，才可以調用其內部的方法
			// Ext.create('asyn.win', {
			// requires : ['asyn.win']
			// // }).show();
			// }).show();

			var win = Ext.create('asyn.win', {
				price : 400,
				requires : ['asyn.win']
			});
			console.log(win.getPrice());
		});

	});
})();
